package com.hzhr.extdevice.model.database;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class EquipCollectExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public EquipCollectExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("ID is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("ID is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("ID =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("ID <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("ID >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("ID >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("ID <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("ID <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("ID in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("ID not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("ID between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("ID not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andTypeIsNull() {
            addCriterion("TYPE is null");
            return (Criteria) this;
        }

        public Criteria andTypeIsNotNull() {
            addCriterion("TYPE is not null");
            return (Criteria) this;
        }

        public Criteria andTypeEqualTo(Integer value) {
            addCriterion("TYPE =", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotEqualTo(Integer value) {
            addCriterion("TYPE <>", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThan(Integer value) {
            addCriterion("TYPE >", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("TYPE >=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThan(Integer value) {
            addCriterion("TYPE <", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThanOrEqualTo(Integer value) {
            addCriterion("TYPE <=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeIn(List<Integer> values) {
            addCriterion("TYPE in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotIn(List<Integer> values) {
            addCriterion("TYPE not in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeBetween(Integer value1, Integer value2) {
            addCriterion("TYPE between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("TYPE not between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andDeviceidIsNull() {
            addCriterion("DEVICEID is null");
            return (Criteria) this;
        }

        public Criteria andDeviceidIsNotNull() {
            addCriterion("DEVICEID is not null");
            return (Criteria) this;
        }

        public Criteria andDeviceidEqualTo(String value) {
            addCriterion("DEVICEID =", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidNotEqualTo(String value) {
            addCriterion("DEVICEID <>", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidGreaterThan(String value) {
            addCriterion("DEVICEID >", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidGreaterThanOrEqualTo(String value) {
            addCriterion("DEVICEID >=", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidLessThan(String value) {
            addCriterion("DEVICEID <", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidLessThanOrEqualTo(String value) {
            addCriterion("DEVICEID <=", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidLike(String value) {
            addCriterion("DEVICEID like", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidNotLike(String value) {
            addCriterion("DEVICEID not like", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidIn(List<String> values) {
            addCriterion("DEVICEID in", values, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidNotIn(List<String> values) {
            addCriterion("DEVICEID not in", values, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidBetween(String value1, String value2) {
            addCriterion("DEVICEID between", value1, value2, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidNotBetween(String value1, String value2) {
            addCriterion("DEVICEID not between", value1, value2, "deviceid");
            return (Criteria) this;
        }

        public Criteria andCdeviceidIsNull() {
            addCriterion("CDEVICEID is null");
            return (Criteria) this;
        }

        public Criteria andCdeviceidIsNotNull() {
            addCriterion("CDEVICEID is not null");
            return (Criteria) this;
        }

        public Criteria andCdeviceidEqualTo(String value) {
            addCriterion("CDEVICEID =", value, "cdeviceid");
            return (Criteria) this;
        }

        public Criteria andCdeviceidNotEqualTo(String value) {
            addCriterion("CDEVICEID <>", value, "cdeviceid");
            return (Criteria) this;
        }

        public Criteria andCdeviceidGreaterThan(String value) {
            addCriterion("CDEVICEID >", value, "cdeviceid");
            return (Criteria) this;
        }

        public Criteria andCdeviceidGreaterThanOrEqualTo(String value) {
            addCriterion("CDEVICEID >=", value, "cdeviceid");
            return (Criteria) this;
        }

        public Criteria andCdeviceidLessThan(String value) {
            addCriterion("CDEVICEID <", value, "cdeviceid");
            return (Criteria) this;
        }

        public Criteria andCdeviceidLessThanOrEqualTo(String value) {
            addCriterion("CDEVICEID <=", value, "cdeviceid");
            return (Criteria) this;
        }

        public Criteria andCdeviceidLike(String value) {
            addCriterion("CDEVICEID like", value, "cdeviceid");
            return (Criteria) this;
        }

        public Criteria andCdeviceidNotLike(String value) {
            addCriterion("CDEVICEID not like", value, "cdeviceid");
            return (Criteria) this;
        }

        public Criteria andCdeviceidIn(List<String> values) {
            addCriterion("CDEVICEID in", values, "cdeviceid");
            return (Criteria) this;
        }

        public Criteria andCdeviceidNotIn(List<String> values) {
            addCriterion("CDEVICEID not in", values, "cdeviceid");
            return (Criteria) this;
        }

        public Criteria andCdeviceidBetween(String value1, String value2) {
            addCriterion("CDEVICEID between", value1, value2, "cdeviceid");
            return (Criteria) this;
        }

        public Criteria andCdeviceidNotBetween(String value1, String value2) {
            addCriterion("CDEVICEID not between", value1, value2, "cdeviceid");
            return (Criteria) this;
        }

        public Criteria andIotCdeviceidIsNull() {
            addCriterion("IOT_CDEVICEID is null");
            return (Criteria) this;
        }

        public Criteria andIotCdeviceidIsNotNull() {
            addCriterion("IOT_CDEVICEID is not null");
            return (Criteria) this;
        }

        public Criteria andIotCdeviceidEqualTo(String value) {
            addCriterion("IOT_CDEVICEID =", value, "iotCdeviceid");
            return (Criteria) this;
        }

        public Criteria andIotCdeviceidNotEqualTo(String value) {
            addCriterion("IOT_CDEVICEID <>", value, "iotCdeviceid");
            return (Criteria) this;
        }

        public Criteria andIotCdeviceidGreaterThan(String value) {
            addCriterion("IOT_CDEVICEID >", value, "iotCdeviceid");
            return (Criteria) this;
        }

        public Criteria andIotCdeviceidGreaterThanOrEqualTo(String value) {
            addCriterion("IOT_CDEVICEID >=", value, "iotCdeviceid");
            return (Criteria) this;
        }

        public Criteria andIotCdeviceidLessThan(String value) {
            addCriterion("IOT_CDEVICEID <", value, "iotCdeviceid");
            return (Criteria) this;
        }

        public Criteria andIotCdeviceidLessThanOrEqualTo(String value) {
            addCriterion("IOT_CDEVICEID <=", value, "iotCdeviceid");
            return (Criteria) this;
        }

        public Criteria andIotCdeviceidLike(String value) {
            addCriterion("IOT_CDEVICEID like", value, "iotCdeviceid");
            return (Criteria) this;
        }

        public Criteria andIotCdeviceidNotLike(String value) {
            addCriterion("IOT_CDEVICEID not like", value, "iotCdeviceid");
            return (Criteria) this;
        }

        public Criteria andIotCdeviceidIn(List<String> values) {
            addCriterion("IOT_CDEVICEID in", values, "iotCdeviceid");
            return (Criteria) this;
        }

        public Criteria andIotCdeviceidNotIn(List<String> values) {
            addCriterion("IOT_CDEVICEID not in", values, "iotCdeviceid");
            return (Criteria) this;
        }

        public Criteria andIotCdeviceidBetween(String value1, String value2) {
            addCriterion("IOT_CDEVICEID between", value1, value2, "iotCdeviceid");
            return (Criteria) this;
        }

        public Criteria andIotCdeviceidNotBetween(String value1, String value2) {
            addCriterion("IOT_CDEVICEID not between", value1, value2, "iotCdeviceid");
            return (Criteria) this;
        }

        public Criteria andGascompanyIdIsNull() {
            addCriterion("GASCOMPANY_ID is null");
            return (Criteria) this;
        }

        public Criteria andGascompanyIdIsNotNull() {
            addCriterion("GASCOMPANY_ID is not null");
            return (Criteria) this;
        }

        public Criteria andGascompanyIdEqualTo(String value) {
            addCriterion("GASCOMPANY_ID =", value, "gascompanyId");
            return (Criteria) this;
        }

        public Criteria andGascompanyIdNotEqualTo(String value) {
            addCriterion("GASCOMPANY_ID <>", value, "gascompanyId");
            return (Criteria) this;
        }

        public Criteria andGascompanyIdGreaterThan(String value) {
            addCriterion("GASCOMPANY_ID >", value, "gascompanyId");
            return (Criteria) this;
        }

        public Criteria andGascompanyIdGreaterThanOrEqualTo(String value) {
            addCriterion("GASCOMPANY_ID >=", value, "gascompanyId");
            return (Criteria) this;
        }

        public Criteria andGascompanyIdLessThan(String value) {
            addCriterion("GASCOMPANY_ID <", value, "gascompanyId");
            return (Criteria) this;
        }

        public Criteria andGascompanyIdLessThanOrEqualTo(String value) {
            addCriterion("GASCOMPANY_ID <=", value, "gascompanyId");
            return (Criteria) this;
        }

        public Criteria andGascompanyIdLike(String value) {
            addCriterion("GASCOMPANY_ID like", value, "gascompanyId");
            return (Criteria) this;
        }

        public Criteria andGascompanyIdNotLike(String value) {
            addCriterion("GASCOMPANY_ID not like", value, "gascompanyId");
            return (Criteria) this;
        }

        public Criteria andGascompanyIdIn(List<String> values) {
            addCriterion("GASCOMPANY_ID in", values, "gascompanyId");
            return (Criteria) this;
        }

        public Criteria andGascompanyIdNotIn(List<String> values) {
            addCriterion("GASCOMPANY_ID not in", values, "gascompanyId");
            return (Criteria) this;
        }

        public Criteria andGascompanyIdBetween(String value1, String value2) {
            addCriterion("GASCOMPANY_ID between", value1, value2, "gascompanyId");
            return (Criteria) this;
        }

        public Criteria andGascompanyIdNotBetween(String value1, String value2) {
            addCriterion("GASCOMPANY_ID not between", value1, value2, "gascompanyId");
            return (Criteria) this;
        }

        public Criteria andDeptnamesIsNull() {
            addCriterion("DEPTNAMES is null");
            return (Criteria) this;
        }

        public Criteria andDeptnamesIsNotNull() {
            addCriterion("DEPTNAMES is not null");
            return (Criteria) this;
        }

        public Criteria andDeptnamesEqualTo(String value) {
            addCriterion("DEPTNAMES =", value, "deptnames");
            return (Criteria) this;
        }

        public Criteria andDeptnamesNotEqualTo(String value) {
            addCriterion("DEPTNAMES <>", value, "deptnames");
            return (Criteria) this;
        }

        public Criteria andDeptnamesGreaterThan(String value) {
            addCriterion("DEPTNAMES >", value, "deptnames");
            return (Criteria) this;
        }

        public Criteria andDeptnamesGreaterThanOrEqualTo(String value) {
            addCriterion("DEPTNAMES >=", value, "deptnames");
            return (Criteria) this;
        }

        public Criteria andDeptnamesLessThan(String value) {
            addCriterion("DEPTNAMES <", value, "deptnames");
            return (Criteria) this;
        }

        public Criteria andDeptnamesLessThanOrEqualTo(String value) {
            addCriterion("DEPTNAMES <=", value, "deptnames");
            return (Criteria) this;
        }

        public Criteria andDeptnamesLike(String value) {
            addCriterion("DEPTNAMES like", value, "deptnames");
            return (Criteria) this;
        }

        public Criteria andDeptnamesNotLike(String value) {
            addCriterion("DEPTNAMES not like", value, "deptnames");
            return (Criteria) this;
        }

        public Criteria andDeptnamesIn(List<String> values) {
            addCriterion("DEPTNAMES in", values, "deptnames");
            return (Criteria) this;
        }

        public Criteria andDeptnamesNotIn(List<String> values) {
            addCriterion("DEPTNAMES not in", values, "deptnames");
            return (Criteria) this;
        }

        public Criteria andDeptnamesBetween(String value1, String value2) {
            addCriterion("DEPTNAMES between", value1, value2, "deptnames");
            return (Criteria) this;
        }

        public Criteria andDeptnamesNotBetween(String value1, String value2) {
            addCriterion("DEPTNAMES not between", value1, value2, "deptnames");
            return (Criteria) this;
        }

        public Criteria andAddressIsNull() {
            addCriterion("ADDRESS is null");
            return (Criteria) this;
        }

        public Criteria andAddressIsNotNull() {
            addCriterion("ADDRESS is not null");
            return (Criteria) this;
        }

        public Criteria andAddressEqualTo(String value) {
            addCriterion("ADDRESS =", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotEqualTo(String value) {
            addCriterion("ADDRESS <>", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressGreaterThan(String value) {
            addCriterion("ADDRESS >", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressGreaterThanOrEqualTo(String value) {
            addCriterion("ADDRESS >=", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLessThan(String value) {
            addCriterion("ADDRESS <", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLessThanOrEqualTo(String value) {
            addCriterion("ADDRESS <=", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLike(String value) {
            addCriterion("ADDRESS like", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotLike(String value) {
            addCriterion("ADDRESS not like", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressIn(List<String> values) {
            addCriterion("ADDRESS in", values, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotIn(List<String> values) {
            addCriterion("ADDRESS not in", values, "address");
            return (Criteria) this;
        }

        public Criteria andAddressBetween(String value1, String value2) {
            addCriterion("ADDRESS between", value1, value2, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotBetween(String value1, String value2) {
            addCriterion("ADDRESS not between", value1, value2, "address");
            return (Criteria) this;
        }

        public Criteria andInstaltimeIsNull() {
            addCriterion("INSTALTIME is null");
            return (Criteria) this;
        }

        public Criteria andInstaltimeIsNotNull() {
            addCriterion("INSTALTIME is not null");
            return (Criteria) this;
        }

        public Criteria andInstaltimeEqualTo(Date value) {
            addCriterion("INSTALTIME =", value, "instaltime");
            return (Criteria) this;
        }

        public Criteria andInstaltimeNotEqualTo(Date value) {
            addCriterion("INSTALTIME <>", value, "instaltime");
            return (Criteria) this;
        }

        public Criteria andInstaltimeGreaterThan(Date value) {
            addCriterion("INSTALTIME >", value, "instaltime");
            return (Criteria) this;
        }

        public Criteria andInstaltimeGreaterThanOrEqualTo(Date value) {
            addCriterion("INSTALTIME >=", value, "instaltime");
            return (Criteria) this;
        }

        public Criteria andInstaltimeLessThan(Date value) {
            addCriterion("INSTALTIME <", value, "instaltime");
            return (Criteria) this;
        }

        public Criteria andInstaltimeLessThanOrEqualTo(Date value) {
            addCriterion("INSTALTIME <=", value, "instaltime");
            return (Criteria) this;
        }

        public Criteria andInstaltimeIn(List<Date> values) {
            addCriterion("INSTALTIME in", values, "instaltime");
            return (Criteria) this;
        }

        public Criteria andInstaltimeNotIn(List<Date> values) {
            addCriterion("INSTALTIME not in", values, "instaltime");
            return (Criteria) this;
        }

        public Criteria andInstaltimeBetween(Date value1, Date value2) {
            addCriterion("INSTALTIME between", value1, value2, "instaltime");
            return (Criteria) this;
        }

        public Criteria andInstaltimeNotBetween(Date value1, Date value2) {
            addCriterion("INSTALTIME not between", value1, value2, "instaltime");
            return (Criteria) this;
        }

        public Criteria andLatitudeIsNull() {
            addCriterion("LATITUDE is null");
            return (Criteria) this;
        }

        public Criteria andLatitudeIsNotNull() {
            addCriterion("LATITUDE is not null");
            return (Criteria) this;
        }

        public Criteria andLatitudeEqualTo(Double value) {
            addCriterion("LATITUDE =", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeNotEqualTo(Double value) {
            addCriterion("LATITUDE <>", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeGreaterThan(Double value) {
            addCriterion("LATITUDE >", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeGreaterThanOrEqualTo(Double value) {
            addCriterion("LATITUDE >=", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeLessThan(Double value) {
            addCriterion("LATITUDE <", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeLessThanOrEqualTo(Double value) {
            addCriterion("LATITUDE <=", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeIn(List<Double> values) {
            addCriterion("LATITUDE in", values, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeNotIn(List<Double> values) {
            addCriterion("LATITUDE not in", values, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeBetween(Double value1, Double value2) {
            addCriterion("LATITUDE between", value1, value2, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeNotBetween(Double value1, Double value2) {
            addCriterion("LATITUDE not between", value1, value2, "latitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeIsNull() {
            addCriterion("LONGITUDE is null");
            return (Criteria) this;
        }

        public Criteria andLongitudeIsNotNull() {
            addCriterion("LONGITUDE is not null");
            return (Criteria) this;
        }

        public Criteria andLongitudeEqualTo(Double value) {
            addCriterion("LONGITUDE =", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeNotEqualTo(Double value) {
            addCriterion("LONGITUDE <>", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeGreaterThan(Double value) {
            addCriterion("LONGITUDE >", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeGreaterThanOrEqualTo(Double value) {
            addCriterion("LONGITUDE >=", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeLessThan(Double value) {
            addCriterion("LONGITUDE <", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeLessThanOrEqualTo(Double value) {
            addCriterion("LONGITUDE <=", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeIn(List<Double> values) {
            addCriterion("LONGITUDE in", values, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeNotIn(List<Double> values) {
            addCriterion("LONGITUDE not in", values, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeBetween(Double value1, Double value2) {
            addCriterion("LONGITUDE between", value1, value2, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeNotBetween(Double value1, Double value2) {
            addCriterion("LONGITUDE not between", value1, value2, "longitude");
            return (Criteria) this;
        }

        public Criteria andStateIsNull() {
            addCriterion("STATE is null");
            return (Criteria) this;
        }

        public Criteria andStateIsNotNull() {
            addCriterion("STATE is not null");
            return (Criteria) this;
        }

        public Criteria andStateEqualTo(Integer value) {
            addCriterion("STATE =", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotEqualTo(Integer value) {
            addCriterion("STATE <>", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThan(Integer value) {
            addCriterion("STATE >", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThanOrEqualTo(Integer value) {
            addCriterion("STATE >=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThan(Integer value) {
            addCriterion("STATE <", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThanOrEqualTo(Integer value) {
            addCriterion("STATE <=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateIn(List<Integer> values) {
            addCriterion("STATE in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotIn(List<Integer> values) {
            addCriterion("STATE not in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateBetween(Integer value1, Integer value2) {
            addCriterion("STATE between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotBetween(Integer value1, Integer value2) {
            addCriterion("STATE not between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andRemarksIsNull() {
            addCriterion("REMARKS is null");
            return (Criteria) this;
        }

        public Criteria andRemarksIsNotNull() {
            addCriterion("REMARKS is not null");
            return (Criteria) this;
        }

        public Criteria andRemarksEqualTo(String value) {
            addCriterion("REMARKS =", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotEqualTo(String value) {
            addCriterion("REMARKS <>", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksGreaterThan(String value) {
            addCriterion("REMARKS >", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksGreaterThanOrEqualTo(String value) {
            addCriterion("REMARKS >=", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksLessThan(String value) {
            addCriterion("REMARKS <", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksLessThanOrEqualTo(String value) {
            addCriterion("REMARKS <=", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksLike(String value) {
            addCriterion("REMARKS like", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotLike(String value) {
            addCriterion("REMARKS not like", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksIn(List<String> values) {
            addCriterion("REMARKS in", values, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotIn(List<String> values) {
            addCriterion("REMARKS not in", values, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksBetween(String value1, String value2) {
            addCriterion("REMARKS between", value1, value2, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotBetween(String value1, String value2) {
            addCriterion("REMARKS not between", value1, value2, "remarks");
            return (Criteria) this;
        }

        public Criteria andCreateuserIdIsNull() {
            addCriterion("CREATEUSER_ID is null");
            return (Criteria) this;
        }

        public Criteria andCreateuserIdIsNotNull() {
            addCriterion("CREATEUSER_ID is not null");
            return (Criteria) this;
        }

        public Criteria andCreateuserIdEqualTo(Integer value) {
            addCriterion("CREATEUSER_ID =", value, "createuserId");
            return (Criteria) this;
        }

        public Criteria andCreateuserIdNotEqualTo(Integer value) {
            addCriterion("CREATEUSER_ID <>", value, "createuserId");
            return (Criteria) this;
        }

        public Criteria andCreateuserIdGreaterThan(Integer value) {
            addCriterion("CREATEUSER_ID >", value, "createuserId");
            return (Criteria) this;
        }

        public Criteria andCreateuserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("CREATEUSER_ID >=", value, "createuserId");
            return (Criteria) this;
        }

        public Criteria andCreateuserIdLessThan(Integer value) {
            addCriterion("CREATEUSER_ID <", value, "createuserId");
            return (Criteria) this;
        }

        public Criteria andCreateuserIdLessThanOrEqualTo(Integer value) {
            addCriterion("CREATEUSER_ID <=", value, "createuserId");
            return (Criteria) this;
        }

        public Criteria andCreateuserIdIn(List<Integer> values) {
            addCriterion("CREATEUSER_ID in", values, "createuserId");
            return (Criteria) this;
        }

        public Criteria andCreateuserIdNotIn(List<Integer> values) {
            addCriterion("CREATEUSER_ID not in", values, "createuserId");
            return (Criteria) this;
        }

        public Criteria andCreateuserIdBetween(Integer value1, Integer value2) {
            addCriterion("CREATEUSER_ID between", value1, value2, "createuserId");
            return (Criteria) this;
        }

        public Criteria andCreateuserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("CREATEUSER_ID not between", value1, value2, "createuserId");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNull() {
            addCriterion("CREATETIME is null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNotNull() {
            addCriterion("CREATETIME is not null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeEqualTo(Date value) {
            addCriterion("CREATETIME =", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotEqualTo(Date value) {
            addCriterion("CREATETIME <>", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThan(Date value) {
            addCriterion("CREATETIME >", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("CREATETIME >=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThan(Date value) {
            addCriterion("CREATETIME <", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThanOrEqualTo(Date value) {
            addCriterion("CREATETIME <=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIn(List<Date> values) {
            addCriterion("CREATETIME in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotIn(List<Date> values) {
            addCriterion("CREATETIME not in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeBetween(Date value1, Date value2) {
            addCriterion("CREATETIME between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotBetween(Date value1, Date value2) {
            addCriterion("CREATETIME not between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andUpdateuserIdIsNull() {
            addCriterion("UPDATEUSER_ID is null");
            return (Criteria) this;
        }

        public Criteria andUpdateuserIdIsNotNull() {
            addCriterion("UPDATEUSER_ID is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateuserIdEqualTo(Integer value) {
            addCriterion("UPDATEUSER_ID =", value, "updateuserId");
            return (Criteria) this;
        }

        public Criteria andUpdateuserIdNotEqualTo(Integer value) {
            addCriterion("UPDATEUSER_ID <>", value, "updateuserId");
            return (Criteria) this;
        }

        public Criteria andUpdateuserIdGreaterThan(Integer value) {
            addCriterion("UPDATEUSER_ID >", value, "updateuserId");
            return (Criteria) this;
        }

        public Criteria andUpdateuserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("UPDATEUSER_ID >=", value, "updateuserId");
            return (Criteria) this;
        }

        public Criteria andUpdateuserIdLessThan(Integer value) {
            addCriterion("UPDATEUSER_ID <", value, "updateuserId");
            return (Criteria) this;
        }

        public Criteria andUpdateuserIdLessThanOrEqualTo(Integer value) {
            addCriterion("UPDATEUSER_ID <=", value, "updateuserId");
            return (Criteria) this;
        }

        public Criteria andUpdateuserIdIn(List<Integer> values) {
            addCriterion("UPDATEUSER_ID in", values, "updateuserId");
            return (Criteria) this;
        }

        public Criteria andUpdateuserIdNotIn(List<Integer> values) {
            addCriterion("UPDATEUSER_ID not in", values, "updateuserId");
            return (Criteria) this;
        }

        public Criteria andUpdateuserIdBetween(Integer value1, Integer value2) {
            addCriterion("UPDATEUSER_ID between", value1, value2, "updateuserId");
            return (Criteria) this;
        }

        public Criteria andUpdateuserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("UPDATEUSER_ID not between", value1, value2, "updateuserId");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeIsNull() {
            addCriterion("UPDATETIME is null");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeIsNotNull() {
            addCriterion("UPDATETIME is not null");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeEqualTo(Date value) {
            addCriterion("UPDATETIME =", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeNotEqualTo(Date value) {
            addCriterion("UPDATETIME <>", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeGreaterThan(Date value) {
            addCriterion("UPDATETIME >", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("UPDATETIME >=", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeLessThan(Date value) {
            addCriterion("UPDATETIME <", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeLessThanOrEqualTo(Date value) {
            addCriterion("UPDATETIME <=", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeIn(List<Date> values) {
            addCriterion("UPDATETIME in", values, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeNotIn(List<Date> values) {
            addCriterion("UPDATETIME not in", values, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeBetween(Date value1, Date value2) {
            addCriterion("UPDATETIME between", value1, value2, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeNotBetween(Date value1, Date value2) {
            addCriterion("UPDATETIME not between", value1, value2, "updatetime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}